package com.ruoyix.weblog.domain.vo;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.ruoyix.common.annotation.ExcelDictFormat;
import com.ruoyix.common.convert.ExcelDictConvert;
import com.ruoyix.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;

import java.io.Serializable;
import java.util.List;

/**
 * 分类视图对象 blog_sort
 *
 * @author ruoyi
 * @date 2024-08-28
 */
@EqualsAndHashCode(callSuper = true)
@Data
@ExcelIgnoreUnannotated
public class BlogSortVo extends BaseEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @ExcelProperty(value = "id")
    private Long id;

    /**
     * 分类名称
     */
    @ExcelProperty(value = "分类名称")
    private String sortName;

    /**
     * 分类描述
     */
    @ExcelProperty(value = "分类描述")
    private String sortDescription;

    /**
     * 分类类型[0:导航栏分类，1:普通分类]
     */
    @ExcelProperty(value = "分类类型[0:导航栏分类，1:普通分类]")
    private Long sortType;

    /**
     * 导航栏分类优先级：数字小的在前面
     */
    @ExcelProperty(value = "导航栏分类优先级：数字小的在前面")
    private Long priority;

    /**
     * 首页样式类型
     */
    @ExcelProperty(value = "首页样式类型", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "blog_sort_show_type")
    private String homePageType;

    /**
     * 文章页面样式类型
     */
    @ExcelProperty(value = "文章页面样式类型", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "blog_article_show_type")
    private String articlePageType;

    /**
     * 类型行数
     */
    @ExcelProperty(value = "类型行数")
    private Long sortRows;

    /**
     * 类型列数
     */
    @ExcelProperty(value = "类型列数")
    private Long sortColumns;

    /**
     * 文章行数
     */
    @ExcelProperty(value = "文章行数")
    private Long articleRows;

    /**
     * 文章列数
     */
    @ExcelProperty(value = "文章列数")
    private Long articleColumns;

    /**
     * 备注
     */
    @ExcelProperty(value = "备注")
    private String remark;

    List<BlogLabelVo> blogLabelVoList;


}
